package com.sw.bbs.common.util;

import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 正則工具
 */
@Data
public class ContentTransUtils {
    /**
     * 内容中的at正则表达式
     */
    private static final Pattern AT_PATTERN = Pattern.compile("@[\\u4e00-\\u9fa5\\w\\-]+");

    /**
     * 内容中的#话题 正则表达式
     */
    private static final Pattern TAG_PATTERN = Pattern.compile("#[\\u4e00-\\u9fa5\\w\\-]+");

    public static Map getContentInfo(String content) {
        Map map = new HashMap();

        List<String> tags = new ArrayList<>();
        Matcher m = TAG_PATTERN.matcher(content);
        while (m.find()) {
            String tagNameMatch = m.group();
            tags.add(tagNameMatch);
        }
        map.put("tags",tags);

        List<String> users = new ArrayList<>();
        Matcher m1 = AT_PATTERN.matcher(content);
        while (m1.find()) {
            String atUserName = m1.group();
            users.add(atUserName);
        }
        map.put("users",users);

        return map;
    }



    public static void main(String[] args) {

        String content = "妈耶 #nba ,@samwuu 新一集《权力的游戏》#kobe 吓到@wusonghe 我了，孩子们#曼联 #切尔西 已经长大了，而我还没做好心理准备[允悲]";
        getContentInfo(content);

    }
}
